void main() {
  // 创建男人对象
  Man man = Man('李雷', 13);
  print(man.name);
  man.eat();
  man.fight();

  // 创建女人对象
  Woman woman = Woman('韩梅梅', 14);
  print(woman.name);
  woman.eat();
}

class Person {
  String? name;
  int? age;
  String gender = '未知';

  Person(this.name, this.age);

  void eat() {
    print('$name -- eat');
  }
}

/// 男人类
class Man extends Person {
  // 定义子类构造函数
  Man(super.name, super.age);

  // 定义子类属性
  String gender = '男';

  // 定义子类方法
  void fight() {
    print('$name -- $gender fight');
  }

  @override
  void eat() {
    print('$name -- $gender 喜欢吃肉');
  }
}

/// 女人类
class Woman extends Person {
  Woman(super.name, super.age);
  // 定义子类属性
  String gender = '女';

  @override
  void eat() {
    print('$name -- $gender 喜欢吃蔬菜');
  }
}
